<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    <script>
        // let a = 5, b = 10;
        // // 你的代码
        // [a, b] = [b, a]
        // console.log(a, b); // 应该输出 10 5




        // const numbers = [7, 8, 9];
        // // 你的代码
        // let [第一个元素, 第二个元素] = numbers
        // console.log(第一个元素, 第二个元素); // 应该输出 7 8




        // const moreNumbers = [1, 2, 3, 4, 5];
        // // 你的代码
        // const [第一个元素, , , , 最后一个元素] = moreNumbers
        // console.log(第一个元素, 最后一个元素); // 应该输出 1 5



        // const maybeEmpty = [1];
        // // 你的代码
        // const [a, b = '默认值'] = maybeEmpty
        // console.log(a, b); // 应该输出 1 '默认值'



        // function printCoordinates([x, y]) {
        //     // 你的代码
        //     console.log(x, y);

        // }
        // printCoordinates([3, 4]); // 应该输出 3 和 4




        // const person = { name: 'Alice', age: 25 };
        // // 你的代码
        // const { name, age } = person
        // console.log(name, age); // 应该输出 Alice 25


        // const user = {
        //     name: 'Bob',
        //     details: {
        //         age: 30,
        //         hobbies: ['reading', 'gaming']
        //     }
        // };  
        // // 你的代码
        // console.log(name, age, hobbies); // 应该输出 Bob 30 [ 'reading', 'gaming' ]




        const obj = {
            name: 'Alice',
            greet: function () {
                setTimeout(() => {
                    console.log(this.name); // 正确用法：this 指向 obj
                }, 1000).bind(this);
            }
        };

        obj.greet(); // 正确输出 Alice

    </script>
</body>

</html>